import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:jinke/page/home/model/tab_title_model.dart';

import 'index.dart';

class HomeController extends GetxController
    with GetSingleTickerProviderStateMixin {
  HomeController();

  final state = HomeState();

  // tap
  void handleTap(int index) {
    Get.snackbar(
      "标题",
      "消息",
    );
  }

  void actionTab(int index) {
    state.pageCtrl.jumpToPage(index);
  }

  /// 在 widget 内存中分配后立即调用。
  @override
  void onInit() {
    super.onInit();
    state.pageCtrl.addListener(() {
      var page = state.pageCtrl.page?.toInt() ?? 0;
      if (page != state.tabTitleIndex) {
        state.tabTitleIndex = page;
        update();
      }
    });
  }

  /// 在 onInit() 之后调用 1 帧。这是进入的理想场所
  @override
  void onReady() {
    super.onReady();
  }

  /// 在 [onDelete] 方法之前调用。
  @override
  void onClose() {
    super.onClose();
  }

  /// dispose 释放内存
  @override
  void dispose() {
    super.dispose();
  }
}
